Method and apparatus for improved channel equalization and level learning in a data communication system

ABSTRACT

A method and apparatus are disclosed for improving channel equalization and level learning in a data communication system. The disclosed equalizer training process separately updates the feed forward filter (FFF) and the level adapter, to gain additional improvements in the training of the feed forward filter (FFF). The multi-step equalizer training process initially trains the feed forward filter (FFF) using a two-level signal EQTR(n) having an ideal value (Step One) to help converge the feed forward filter (FFF) to a certain level. Once the feed forward filter (FFF) reaches a certain level of convergence, the training circuitry is reconfigured during step two of the equalizer training process, to evaluate and update the actual level of the signal EQTR(n), to compensate for the channel. The determined weighting factors are applied to a low pass filter and the actual level of the signal EQTR(n), B(n), is calculated. Once the actual level of the signal EQTR(n), B(n), has been calculated, the actual level of the signal EQTR(n), B(n), is applied to the level adapter, and the level adapter is no longer updated by reconfiguring the training circuitry to remove the error signal, err(n), inputs to the level adapter. During step three, the feed forward filter (FFF) continues to be updated and fine-tuned by the error signal err(n). Since the level of the signal EQTR(n) is the actual value, B(n), the performance of the feed forward filter (FFF) is improved. Once the equalizer training process is complete, the feed forward filter (FFF) is fixed. The improved training of the feed forward filter (FFF) allows the structure of level learning process to be simplified, with the training circuitry removed and the feed forward filter (FFF) fixed, where each level will be divided into six phases and processed individually.

FIELD OF THE INVENTION

The present invention relates to communications systems and methods, andmore particularly to a data communication systems and methods in whichchannel impairments are treated.

BACKGROUND OF THE INVENTION

It is well known that a public switched telephone network (PSTN) havingdigital links, such as Tl lines, can form a basis for a virtual digitalnetwork providing 64 kilo-bits-per-second (kb/s) channels. For example,by synchronizing a pulse code modulation (PCM) modem to an 8 kHzsampling rate provided in a central office (CO) and using 8-bit PCMwords for data transmission, the modem can theoretically achieve a datarate up to 64 kb/s.

In practice, however, the highest data rate achievable by the PCM modemis about 56 kb/s, due to power constraints and channel impairments, suchas echo and intersymbol interference. This rate may be further reducedas the central office periodically “robs” the least significant bit(LSB) of the PCM words and substitutes the robbed bit with a signalingbit, in a known manner. The robbed bit signaling is necessary toindicate call statuses to effect call administration in the PSTN. Inrobbed bit signaling, the central office (not shown) in the PSTN 120robs the LSB of a transmitted symbol on each channel once in every sixframes.

To reduce echo interference in traditional voice communications,especially far echo interference due to a long-distance feedback of avoice signal through the PSTN, the level of the voice signal from thePSTN is attenuated in a central office switch before it is passed ontoan analog loop connected to telephone equipment. Such attenuation by thecentral office switch is known as a “digital loss.”

While the above-described robbed bit substitution does not causesignificant distortion in voice communications, the robbing of bitscauses significant degradation in data communications because of theloss of transmitted bits occasioned thereby. Similarly, while the abovedigital loss helps reduce the far echo interference in voicecommunications, digital loss causes the levels of transmitted signalsrepresenting data to be attenuated, resulting in erroneous data recoveryin data communications if the digital loss is not taken into account inthe PCM modem. Although the digital loss is built into each centraloffice switch and the underlying attenuation factor is invariant for agiven switch, this factor may vary from one switch to another dependingon the type and manufacturer of the switch. As a result, a PCM modemthat is pre-adjusted during manufacture thereof to allow for the digitalloss by a particular type of switch may not function properly whenconnected to a different switch in the field.

As apparent from the above-described deficiencies with conventional datacommunication systems, a need exists for a data communication systemhaving improved channel equalization and level learning. A further needexists for a data communication system that uses a two-level learningapproach with fine-tuning to train the channel equalizer. Yet anotherneed exists for training the channel equalizer in a data communicationsystem that utilizes the character of the digital network to optimizethe performance of the channel equalizer.

SUMMARY OF THE INVENTION

Generally, a method and apparatus are disclosed for improving channelequalization and level learning in a data communication system.According to one aspect of the invention, a multi-step equalizertraining process is used to train the feed forward filter (FFF) using atwo-level equalizer training signal EQTR(n). The equalizer trainingprocess of the present invention separately updates the feed forwardfilter [(FFF)] and the level adapter, to gain additional improvements inthe training of the feed forward filter [(FFF)]. In addition, theimproved training of the channel equalizer provided by the presentinvention allows a novel level learning process where the feed forwardfilter [(FFF)] is fixed.

The multi-step equalizer training process initially trains the feedforward filter [(FFF)] using a two-level equalizer training signalEQTR(n) having an ideal value (Step One). Step one helps to converge thefeed forward filter [(FFF)] to a certain level. Once the feed forwardfilter [(FFF)] reaches a certain level of convergence, the trainingcircuitry is reconfigured during step two of the equalizer trainingprocess, to evaluate and update the actual level of the signal EQTR(n),to compensate for the channel. The actual level of the signal EQTR(n)can be different from the ideal signal established during step onebecause the channel may have a digital loss or a robbed bit conditionmay have occurred. The level of all six phases is monitored during steptwo, and the amplitude of each phase is calculated. The determinedweighting factors are applied to a low pass filter to reduce the noiseand the actual level of the equalizer training signal EQTR(n), B(n), iscalculated.

Once the actual level of the signal EQTR(n), B(n), has been calculatedduring step two of the equalizer training process, the actual level ofthe signal EQTR(n), B(n), is applied to the level adapter, and the leveladapter is no longer updated by reconfiguring the training circuitry toremove the error signal, err(n), inputs to the level adapter. Duringstep three, the feed forward filter [(FFF)] continues to be updated bythe error signal err(n). Since the level of the signal EQTR(n) is theactual value, B(n), the performance of the feed forward filter [(FFF)]is improved, even though robbed bit and digital loss degradations haveoccurred. Thus, step three trains the feed forward filter [(FFF)] withthe new set of B(n) levels obtained during step two. The final tuning ofthe feed forward filter [(FFF)] is performed during step three, with thecorrect level that is disrupted by the robbed bit signaling. Once theequalizer training process is complete, the feed forward filter [(FFF)]is fixed. Thus, the fine-tuning step (Step 3) improves the equalizertraining and reduces the number of computations that must be performed(MIPS) during the equalizer training process.

According to another aspect of the invention, the improved training ofthe feed forward filter [(FFF)] allows the feed forward filter [(FFF)]to be fixed during the level learning process. Thus, the level learningprocess is simplified and can be implemented with fewer MIPS. Theimproved training of the feed forward filter [(FFF)] allows thestructure of level learning process to be simplified, with the trainingcircuitry removed and the feed forward filter [(FFF)] fixed, where eachlevel will be divided into six phases and processed individually.

A more complete understanding of the present invention, as well asfurther features and advantages of the present invention, will beobtained by reference to the following detailed description anddrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a network communications environment in accordancewith the present invention;

FIG. 2 illustrates the modem 130 of FIG. 1 in further detail;

FIG. 3 illustrates the periodicity of robbed bit signaling affectingdata symbols transmitted by the modem 105 of FIG. 1;

FIG. 4 illustrates an example of creating the training signal,TR_(g)(n), used in the level learning process; and

FIG. 5 illustrates the level learning of the channel equalizer inaccordance with the present invention.

DETAILED DESCRIPTION

FIG. 1 illustrates a network communications environment 100 embodyingprinciples of the present invention. As shown in FIG. 1, the networkcommunications environment 100 includes a pulse code modulation (PCM)modem 105 connected to the public switched telephone network (PSTN) 120by means of a digital link 115, such as a T1 line. Modem 105 may beemployed, for example, by an Internet Service Provider (ISP) tocommunicate Internet data to a PCM modem 130 at a client site. The PCMmodem 130 is discussed further below in conjunction with FIG. 2. Modem130 may initiate a dial-up connection to modem 105 to access theInternet service. This dial-up connection includes an analog loop 125,connecting modem 130 to the PSTN 120.

In the illustrative embodiment, both modems 105, 130 are synchronized toan 8 kHz sampling rate provided by a conventional μ-law codec in acentral office (not shown) in PSTN 120. The data communications betweenmodems 105 and 130 are in the form of 8-bit PCM words, using thenon-uniformly spaced quantization levels in accordance with the standardμ-law companding as the signal alphabets or data symbols. PCM modem 105transmits a signal representing data to the PCM modem 130 via anestablished dial-up connection. The transmitted signal is corrupted bychannel impairments, such as intersymbol interference and echo. Aconventional switch (not shown) in the central office attenuates thetransmitted signal before it is passed onto the analog loop 125. Suchattenuation by the central office switch is known as a “digital loss.”The digital loss is traditionally imposed to reduce echo interference invoice communications, especially far echo interference due to along-distance feedback of a voice signal through PSTN 120.

FIG. 2 illustrates the PCM modem 130 of FIG. 1 in further detail. Theattenuated transmitted signal, x(t), at time t from PSTN 120 has aspectrum spanning from DC to 4 kHz on the analog loop 125, and isreceived by standard interface 131. The received signal is then appliedto an A/D convertor 135 of conventional design in receiving circuitry133. Automatic gain control (AGC) circuitry 138 imparts a gain to thedigital samples resulting from the A/D conversion. The amount of thisgain is determined during an initial training of modem 130, in a knownmanner, to adjust the energy of the digital samples to a proper level.The gain-adjusted samples, denoted x(n), are illustratively processed byan adaptive T-spaced decision feedback equalizer (DFE) 140 ofconventional design, where n=t/T, and T represents the symbol interval.However, it will be appreciated that a person skilled in the art mayalternatively employ an adaptive fractionally-spaced DFE, such as aT/2-spaced DFE, instead of DFE 140. In a conventional manner, DFE 140decides what PCM words were transmitted based on x(n), and uses pastdecisions to compensate for the undesirable intersymbol interference.

Specifically, DFE 140 includes feed-forward filter 143 and feedbackfilter 145, which may be finite impulse response (FIR) filters. Let Nand K be the numbers of tap coefficients of filters 143 and 145,respectively, and c_(u) and p_(v) represent the coefficients of therespective filters, where 0≦u<N and 0≦v<K. The coefficients, p_(v), arepre-selected to achieve an impulse response of an equivalent channelbased on the real channel conditions.

It should be noted that modem 130 operates in two modes, namely, atraining mode and an operation mode (steady state). When modem 130 isinitialized, the training mode, including a channel equalizationprocess, discussed below in a section entitled EQUALIZER TRAINING, and a“level learning” process, discussed below in a section entitled LEVELLEARNING, is initiated using switch 146 (FIG. 2) set at the secondposition. Otherwise, in the operation mode, which is the mode shown inFIG. 2, switch 146 is set at a first position to pass the output offeed-forward filter 143 to a subtracter 147. This subtracter 147subtracts, from the received output, the output of feedback filter 145.The resulting difference, denoted r′(n), is provided to decisioncircuitry 149. Decision circuitry 149 determines what the most likelytransmitted PCM words, r(n), are based on a signal level conversiontables, taking into account line impairments including the digital loss.The decisions from circuitry 149 are provided as an input to feedbackfilter 145, and are also provided as an input to subtracter 151. Usingr′(n) as another input, subtracter 151 evaluates an error signal err(n)as follows:

err(n)=r(n)−r′(n)=P ^(T)(n)R(n)−C ^(T)(n)X(n)  Eq. (1)

C(n)=C(n−1)+2αerr(n)X(n)

where,

P ^(T)(n)=[p _(K−1)(n)p _(K−2)(n) . . . p ₁(n)p ₀(n)],

C ^(T)(n)=[c _(N−1)(n)c _(N−2)(n) . . . c ₁(n)c ₀(n)],

R ^(T)(n)=[r(n−(K−1))r(n−(K−2)) . . . r(n−1)r(n)],

and

X ^(T)(n)=[x(n−(N−1))x(n−(N−2)) . . . x(n−1)x(n)].

In the above equations, α is the step-size of updating the feed-forwardfilter 143 and it is assumed that p₀ equals one. p_(k)={p₀, p₁, p₂, . .. , p_(K−1)} is the estimated coefficients of the equivalent channelimpulse response and these coefficients can be pre-selected beforetraining the DFE 140 of the channel conditions. In the current operationmode, the error signal err(n) is passed through switch 146, onto thefeed-forward filter 143 to update its tap coefficients, C(n), above.

As previously indicated, PSTN 120 implements robbed bit signaling toindicate call statuses to effect call administration therein. In robbedbit signaling, the central office (not shown) in PSTN 120 robs the LSBof a transmitted symbol on each T1 channel once in every six frames.Thus, as shown in FIG. 3, if the robbed bit signaling affects a j-^(th)PCM word (denoted z(j)) transmitted by modem 105 on a channel of T1 line115, the robbed bit equally affects every (j+6k)^(th) PCM wordtransmitted thereby, where k is an integer. As each affected PCM wordhas its LSB substituted by a signaling bit, the loss of the LSB datacauses significant degradation to the data transmission. Two types ofrobbed bit signaling have been identified. A first one is referred toherein as “Type A” robbed bit signaling, and the other is referred toherein as “Type B” robbed bit signaling. In the type A robbed bitsignaling, the LSB of the transmitted PCM word is always set to a binaryvalue “1.” For example, when modem 105 is used to communicate datarepresented by a PCM word “4F” (in hexadecimal) to modem 130, thetransmitter of modem 105 transmits onto line 115 its μ-law value, “B0,”which is the complement of “4F” in accordance with the μ-law compandingtechnique. Implementing the type A robbed bit signaling, an intermediatecentral office in PSTN 120 transforms the transmitted word “B0” to “B1.”The transformed word would be converted by a μ-law codec in a centraloffice close to modem 130 to an analog signal. Assuming no channelimperfection, A/D converter 135 in modem 130 would convert the analogsignal to a digital representation of “4E,” which is the complement of“B1.” Thus, because of the type A robbed bit signaling, the PCM word“4F” communicated by modem 105 becomes “4E” when received at modem 130.However, it should be noted that the type A robbed bit signaling has noeffect on communicated words whose LSB's equal “0”, such as “4E.”

On the other hand, when a transmitted PCM word affected by the type Brobbed bit signaling is converted to an analog signal on analog loop125, the signal level takes on an average value between thatrepresenting the PCM word having the LSB equal to “1” and thatrepresenting the PCM word having the LSB equal to “0.” Thus, because ofthe type B robbed bit signaling, when the communicated word is “4E” or“4F,” assuming no channel imperfection, A/D converter 135 would covertthe communicated word to “4E” about half the times and “4F” the otherhalf.

Again, while the above-described robbed bit substitution does not causesignificant distortion in voice communications, it causes significantdegradation in data communications because of the loss of transmittedbits occasioned thereby. Similarly, while the above digital loss helpsreduce the far echo interference in voice communications, it causes thelevels of transmitted data signals to be attenuated, resulting inerroneous data recovery in data communications if the digital loss isnot taken into account in the PCM modem 130. Although the digital lossis built into each central office switch and the underlying attenuationfactor is invariant as far as a given switch is concerned, this factormay vary from one switch to another depending on the type andmanufacturer of the switch. As a result, a PCM modem which ispre-adjusted during manufacture thereof to allow for the digital loss bya particular switch may not function properly when connected to adifferent switch in the field.

A signal level conversion table is generated using the level learningprocess described below. This table contains (a) each allowabletransmitted PCM word from modem 105 that is affected by, among otherthings, the digital loss imposed by the central office switch, and (b)the received signal level corresponding thereto. During operation ofmodem 130, by looking up this conversion table, decision circuitry 149determines the most likely transmitted PCM word corresponding to thereceived signal, thereby effectively recovering the underlyingtransmitted data. Advantageously, with the invention, the actualattenuation factor applied by a switch to a transmitted signal does notneed to be known a priori to properly treat the resulting digital loss.

EQUALIZER TRAINING

According to a feature of the present invention, the multi-stepequalizer training process includes a fine-tuning step (Step 3 discussedbelow) that improves the equalizer training and reduce the number ofcomputations that must be performed (MIPS) during the level learningprocess. In addition, the equalizer training process of the presentinvention separately updates the feed forward filter [(FFF)] 143 and thelevel adapter 161, for improved training of the feed forward filter[(FFF)] 143. The equalizer training process will be described asfollows. First, the elements of the receiver 130 that are operativeduring the multi-step equalizer training process are generally discussedin a subsection entitled Training Circuitry. Thereafter, the varioussteps of the multi-step equalizer training process are separatelydiscussed and the manner in which the various elements of the trainingcircuitry are reconfigured for each step is discussed. A pseudo-randomequalizer training signal to avoid a DC offset, EQTR(n), is used totrain the feed forward filter [(FFF)] 143. The equalizer trainingsignal, EQTR(n), is a two-level PCM code. In the illustrativeembodiment, the amplitude of the two-level PCM code for the EQTR(n)signal is selected to be Ucode equal to 79 (decimal). As discussedbelow, the amplitude of Ucode 79 is 3900 (decimal) and the correspondingδ is 128. However, the amplitude of the two-level PCM code for theEQTR(n) signal can be selected by another two-level Ucode for adifferent equalizer to get better performance. Of course, the values oftheir amplitude and δ will be different for a different Ucode. Theselected Ucode must satisfy the restrictions of transmitted power. It isnoted that there is no zero insertion for the equalizer training signal,EQTR(n).

Training Circuitry:

Referring to FIG. 2, during the equalizer training process, theequalizer training signal EQTR(n) is applied to delay element 156 inmodem 130. It is noted that during equalizer training the signal EQTR(n)is a two-level random signal. Element 156 imposes a delay to the inputsequence to synchronize the operations of various elements in trainingcircuitry 153. Modulo partial response filter 159 processes the EQTR(n)sequence according to the following expression:${{s_{i}(n)} = {\sum\limits_{m = 0}^{\frac{K - {{mod}\quad 6{(K)}}}{6}}{P_{{{mod}\quad 6{({n - i})}} + {6m}}{{EQTR}\left( {n - {{mod}\quad 6\left( {n - i} \right)} - {6m}} \right)}}}},$

where i=0, 1, . . . , 5; mod 6 (*) denotes a standard modulo 6 operationon the argument “*”. The output of filter 159, denoted vector S(n), isprovided to level adapter 161, where S^(T)(n)=[s₀(n) s₁(n) s₂(n) s₃(n)s₄(n) s₅(n)]. Based on S(n) and another input err(n) to be described,level adapter 161 provides weighting factors, denoted h_(i)(n), tomodulo signal adjuster 163, where i=0, 1, 2, . . . , 5. The manner inwhich h_(i)(n)'s are derived is described below. Using the receivedweighting factors and a delayed version of EQTR(n), modulo signaladjuster 163 computes an output q(n) according to the followingexpression:

q(n)=sign[EQTR(n)](A _(EQTR) +h _(mod 6(n))δ),  Eq. (2)${{where}\quad {{sign}\lbrack\tau\rbrack}} = \left\{ {\begin{matrix}{+ 1} & {\tau > 0.0} \\0 & {\tau = 0.0} \\{- 1} & {\tau < 0.0}\end{matrix},} \right.$

and A_(EQTR) is the ideal amplitude of EQTR(n) (equal to 3900).

It should be noted that q(n) actually represents the received signalcorresponding to transmitted EQTR(n) subject to the digital loss by thecentral office switch in PSTN 120. The output of the modulo signaladjuster 163, q(n), is provided to the partial response filter stage180, whose output is applied to subtracter 167. The partial responsestage 180 operates like the feedback filter 145 and calculates theP^(T)(n)Q(n) term utilized in the calculation of the error signal,err(n), discussed below. Subtracter 167 also receives a signal fromfeed-forward filter 143 through switch 146. This signal is derived byfilter 143 from the data transmission by modem 105 based on the EQTR(n)sequence. Subtracter 167 subtracts the level of the output signal offilter 143 from the output of the filter stage 180 to form an errorsignal err(n).

Based on err(n) and S(n) from modulo partial response filter 159, leveladapter 161 updates the weighting factors of the level adapter 161,h_(i)(n), i=0, 1, . . . 5, as follows:

H(n)=H(n−1)−2β·err(n)S(n),  Eq. (3)

where:

H ^(T)(n)=[h ₀(n)h ₁(n)h ₂(n)h ₃(n)h ₄(n)h ₅(n)],

err(n)=P ^(T)(n)Q(n)−C ^(T)(n)X(n),

 L(n)=(1−λ)L(n−1)+λH(n),

b _(i)(n)=A _(EQTR)+1_(i)(n)δ,

Q ^(T)(n)=[q(n−(K−1))q(n−(K−2)) . . . q(n−1)q(n)],

L ^(T)(n)=[1₀(n)1₁(n)1₂(n)1₃(n)1₄(n)1₅(n)],

B ^(T)(n)=[b ₀(n)b ₁(n)b ₂(n)b ₃(n)b ₄(n)b ₅(n)], and

δ=128 for mu-law.

In addition, β is the step-size of updating the level adapter, λ is thecoefficient of the LPF (Low Pass Filter) for H(n) 182. The initial valueof L^(T)(n) is [0.0 0.0 0.0 0.0 0.0 0.0] and B^(T)(n)=[b₀(n) b₁(n) b₂(n)b₃(n) b₄(n) b₅(n)] is the actual amplitude of EQTRN equalizer trainingsignal corresponding to the six phases at the receiver.

Equalizer Training Process

Step One: During a first step of the equalizer training process, switch186 and switch 188 are open, for training of the feed forward filter[(FFF)] 143 using a two-level signal EQTR(n) having an ideal value. Theamplitude of the two-level signal EQTR(n) applied to the feed forwardfilter [(FFF)] 143 is the same for all six phases. Step one helps toconverge the feed forward filter [(FFF)] 143 to a certain level.

Step Two: Once the feed forward filter [(FFF)] 143 reaches a certainconvergence, switch 186 and switch 188 are closed during step two of theequalizer training process, to evaluate and update the actual level ofthe signal EQTR(n) to compensate for the channel. The actual level ofthe signal EQTR(n) can be different from the ideal signal establishedduring step one because the channel may have a digital loss or a robbedbit condition may have occurred. The level of all six phases ismonitored during step two, and the amplitude of each phase iscalculated. Again, level adapter 161 updates the weighting factors ofthe level adapter 161, h_(i)(n), i=0, 1, . . . 5, as follows:

H(n)=H(n−1)−2β·err(n)S(n),  Eq. (3).

The weighting factors are applied to low pass filter 182 during step twoand the actual level of the signal EQTR(n), B(n), is calculated at stage184.

Step Three: Once the actual level of the signal EQTR(n), B(n), has beencalculated by stage 184, the actual level of the signal EQTR(n), B(n),is applied to the level adapter 161, and the switches 186 and 188 areopened. Thereafter, the level adapter 161 will not be updated. The feedforward filter [(FFF)] 143, however, continues to be updated by theerror signal err(n). Since the level of the signal EQTR(n) is the actualvalue, B(n), the performance of the feed forward filter [(FFF)] 143 isimproved, even though robbed bit and digital loss degradations haveoccurred. Thus, step three trains the feed forward filter [(FFF)] 143with the new set of B(n) levels obtained during step two. The finaltuning of the feed forward filter [(FFF)] 143 is performed during stepthree, with the correct level that is disrupted by the robbed bitsignaling.

Once the equalizer training process is complete, the feed forward filter[(FFF)] 143 is fixed.

LEVEL LEARNING

While the equalizer training process discussed above was performed usinga two-level training signal, EQTR(n), the level learning process learnsall 256 PCM levels including positive and negative values. Two levels(one PCM code) is learned at each time interval. According to a featureof the present invention, the feed forward filter [(FFF)] 143 can befixed during the level learning process, because it is well-trained.Thus, the level learning process is simplified and can be implementedwith fewer MIPS. First the level learning process is generallydiscussed, and thereafter the configuration of the PCM modem 130 duringthe level learning process is presented.

Level Learning Terminology

During the level learning process, any type A and/or type B robbed bitsignaling affecting the data transmission from modem 105 to modem 130can be identified. Based on the knowledge of any occurrence of the typeA and/or type B robbed bit signaling, modem 130 communicates to modem105 the allowable PCM words which can be transmitted by the transmitterof the PCM modem 105 and properly recovered in modem 130 despite therobbed bit signaling.

In accordance with the level learning process, multiple trainingsequences of reference signals are transmitted, one by one, from modem105 to modem 130. Each training sequence TRN is of a predeterminedlength and includes non-spectrum shaping signals denoted TR(n). Each TRNsequence corresponds to a different possible transmitted signal levelA_(g) in absolute value, where g denotes the PCM word represented byA_(g), and 00 (hexadecimal)≦g≦7F (hexadecimal) in this instance. Thisstems from the fact that each PCM word in this instance is eight bitslong, with one bit indicating a sign of the transmitted signal levelrepresenting the PCM word, and the number of possible transmitted signallevels in absolute value is thus 2⁷=128 (equals 7F in hexadecimal). Forexample, the transmitted signal level A_(g) with g=4E (hexadecimal) is3772 units (Ucode equal to 78 in decimal). Thus, the number of TRNsequences used in the level learning process to create the signal levelconversion table is 128, each of which corresponds to a different A_(g).However, in practice, not every transmitted signal level is employed totransmit data. In that case, the number of TRN sequences used in thelevel learning process is accordingly reduced. In addition, in order tokeep the transmitted power virtually constant during the level learningprocess, the TRN sequences are transmitted in such an order that thoseTRN sequences corresponding to relatively high transmitted signal levelsalternate with those corresponding to relatively low transmitted signallevels.

The level learning process takes place after the feed forward filter 143is trained in the manner described above. The level learning process isinitiated by setting switch 146 at the first position to active thefeedback filter 145. Thus, during the level learning process, thetraining circuit 153 is removed from the processing loop entirely. FIG.5, discussed further below, illustrates configuration of the PCM modem130 during the level learning of the feed forward filter 143 inaccordance with the present invention.

During the level learning process, modem 105 transmits data based on thesignals TR(n) in the current TRN sequence used to create thecorresponding part of the signal level conversion table in accordancewith the invention. By way of example, the number of tap coefficients offeedback filter 145, i.e., K, equals three in this instance.Accordingly, to eliminate any interference caused by previous decisionoutputs, the TRN sequence corresponding to the transmitted signal levelA_(g), shown in FIG. 4, 00≦g≦7F, is designed to include at least threezero-level signals in a row between signals of ±A_(g). In this manner,interference from the previous symbol is avoided. The signs of the±A_(g) signals in the TRN sequence alternate to avoid a DC offset.

It should be noted that if robbed bit signaling of type A or type Baffects a first signal in the TRN sequence, every 6th signal from thatfirst signal in the training sequence would be equally affected. Toeffectively identify any affected signals, the signals TR(n) in the TRNsequence as shown in FIG. 4 are divided into six groups, i.e., groupsi=0, 1, . . . 5. In this instance, group 0={TR(0) TR(6) TR(12) TR(18)TR(24) . . . }, group 1={TR(1) TR(7) TR(13) TR(19) TR(25) . . . }, group2={TR(2) TR(8) TR(14) TR(20) TR(26}. . . }, group 3={TR(3) TR(9) TR(15)TR(21) TR(27) . . . }, group 4={TR(4} TR(10} TR(16} TR(22} TR(28} . . .}, and group 5={TR(5) TR(11) TR(17) TR(23) TR(29) . . . }. If any memberof one such group is affected by type A or type B robbed bit signaling,all members in that group are equally affected.

It should also be noted that in order to have the group members equallyparticipate in the level learning process, the TRN sequence is designedso that the non-zero signals of ±A_(g) are evenly distributed among thegroups. For example, the TRN sequence in FIG. 4 comprises sub-sequence403 which consists of TR(0) through TR(29), and repeats itselfthroughout the TRN sequence. In each sub-sequence, the non-zero signalsare arranged in such a way that each non-zero signal belongs to adifferent one of the above-identified groups. For example, insub-sequence 403, the non-zero signals TR(3), TR(7), TR(11), TR(16),TR(20) and TR(24} belong to groups 3, 1, 5, 4, 2 and 0, respectively.

As previously indicated, the training circuitry in FIG. 5 generates thesignal level conversion table in accordance with the invention based ono(n) , which represents the version of TR(n) received at decisioncircuitry 149, and incorporates the effect of the digital loss caused bythe central office switch in PSTN 120. In one implementation, theconversion table contains a row for each PCM code and a column for eachof the six frames, i. A table entry in row g and column i represents theaverage received signal level corresponding to the transmitted signalwhich represents g and belongs to the group i. The training circuitry inFIG. 5 forms the table entry by (a) collecting the o(n) signalscorresponding to the non-zero TR(n) signals in group i in the TRNsequence containing ±A_(g), and (b) low-pass filtering the collectedo(n) signals in group i to reduce noise therein. In effect, the tableentry represents an average of the collected o(n) signals in group i.The conversion table is provided to decision circuitry 149 for thedecision circuitry 149 to determine what the most likely transmitted PCMwords are, given the received signals, after modem 130 is put in theoperation mode. For each received signal corresponding to a group,decision circuitry 149 searches the conversion table for the most likelytransmitted PCM word in the column corresponding to that group.

Level Learning Process:

A PCM level sent from a transmitter 105 through a digital network 100,can be received at the receiver 130 in different levels in differentphases. The robbed bit detection is one way to find the position of arobbed bit signal and then use predetermined tables for each level andphase. The predetermined tables are calculated based on the informationof digital loss and the mu to linear values of the G.711 standard. Thepredetermined tables do not consider some additional factors, such aschannel distortion, channel loss and μ-law to A-law conversion, whichmay cause some severe degradation of performance. In order to achievemore adaptive and higher performance, the present invention employs atechnique of level learning. There are 128 different levels (PCM codes)in a PCM modem, but each level has positive and negative values. Thus,there are 256μ values in total. With the well training of channelequalizer previously described, the structure of level learning can besimplified as shown in FIG. 5, where each level will be divided into sixphases and processed individually. In other words, the level learningprocess of the present invention does not utilize the level adapter 161.

Due to improvements in the training of the channel equalizer 143provided by the present invention, the channel equalizer 143 will befrozen to evaluate the amplitude of each phase for each PCM code. Asindicated above, the 128 PCM codes will be trained in different order tomaintain that the average of signal energy is constant. The sequence oftraining signals will be designed to learn one level at one period oftime. In order to eliminate the interference between two PCM codes,which is caused by the decision feedback equalizer (DFE) 140, thetraining signals will be inserted zeroes, between two different PCMcodes to clear the symbol interference in the feedback filter (FBF) 145.

The variable {TR_(g)(n)} is the level training signal of the g-th PCMlevel. The {TR_(g)(n)} signal is a pseudo-random signal with a constantpositive and negative amplitude that is sent from the transmitter 105.In order to avoid the symbol interference caused from the previoustraining PCM code, the first m training signals {TR_(g)(n)} will be setto zero where m is on the order of the feedback filter (FBF) 145.

The training sequence {TR_(g)(n)} goes through the networkcommunications environment 100 and is disrupted by the channelimpairments discussed above. At the receiver 130, the amplitude of theg-th PCM code should appear in a different amplitude in the six phases.Let A_(g)(n) be the amplitude of the six phases for the g-th PCM levelat the n-th sequence, where (A_(g)(n))^(T)=[a₀ ^(g)(n) a₁ ^(g)(n) a₂^(g)(n) a₃ ^(g)(n) a₄ ^(g)(n) a₅ ^(g)(n)]. From FIG. 5, it follows that:

o(n)=C ^(T)(n)X(n)−(P′(n))^(T) O(n),  Eq. (4)

a _(mod 6(n)) ^(g)(n)=abs(o _(g)(n)),  Eq. (5)

a _(k) ^(g)(n)=0, for k≠mod 6(n),  Eq. (6)

where

(P′(n))^(T) =[p _(K−1)(n)p _(K−2)(n) . . . p ₁(n)],

O ^(T)(n)=[o(n−(N−1))o(n−(N−2)) . . . o(n−1)], and

abs (x) denotes the absolute value of x.

From equation (4), the level output of each phase is determined by theexact output of other phases. If the noise occurred in one phase can bepropagated to the level output of other phases, then the trainingsequence, {TR_(g)(n)}, can be inserted zeroes to isolate theinterference among the six phases caused by the feedback filter (FBF)145. A low pass filter (LPF) 195 shown in Equation (7) is used to removethe white noise. The output of the LPF 195, {overscore (A)}_(g)(n), isthe levels of the six phases that is learned from the channel. Thus,

{overscore (A)} _(g)(n)=(1−γ){overscore (A)} _(g)(n−1)+γA _(g)(n),  Eq.(7).

where γ is the coefficient of the low pass filter 195.

It is to be understood that the embodiments and variations shown anddescribed herein are merely illustrative of the principles of thisinvention and that various modifications may be implemented by thoseskilled in the art without departing from the scope and spirit of theinvention.

For example, the network communications environment 100 disclosed hereinuses T1 facilities which are common in the United States. However, theinvention is equally applicable in other countries such as Europeancountries where E1 facilities instead of the T1 facilities are used, andwhere A-law companding instead of μ-law companding controls. Finally,network communications environment 100 disclosed herein is in a form inwhich various system functions are performed by discrete functionalblocks. However, any one or more of these functions could equally wellbe embodied in an arrangement in which the functions of any one or moreof those blocks or indeed, all of the functions thereof, are realized,for example, by one or more appropriately programmed processors.

I claim:
 1. A method for equalizing a channel in a data communicationsystem, comprising the steps of: training a channel equalizer using atwo-level equalizer training signal EQTR(n) having an ideal value;evaluating and updating an actual level of said equalizer trainingsignal EQTR(n) to compensate for said channel; and applying said actuallevel of the signal EQTR(n) to a level adapter while further updatingsaid channel equalizer.
 2. The method of claim 1, wherein said firsttraining step helps to converge the channel equalizer to a certainlevel.
 3. The method of claim 1, wherein said evaluating and updatingstep is performed once said channel equalizer reaches a certain level ofconvergence.
 4. The method of claim 1, wherein said actual level of thesignal EQTR(n) is different from said equalizer training signal EQTR(n)having an ideal value due to a digital loss or a robbed bit condition.5. The method of claim 1, wherein said evaluating and updating monitorsthe level of six phases and the amplitude of each phase is calculated.6. The method of claim 1, wherein the noise of the actual level of theequalizer training signal EQTR(n) is reduced using a low pass filterbefore said actual level of the equalizer training signal EQTR(n) iscalculated.
 7. The method of claim 1, further comprising the steps offixing said level adapter and updating said channel equalizer.
 8. Themethod of claim 1, further comprising the step of performing a levellearning process with said channel equalizer fixed.
 9. The method ofclaim 8, further comprising the step of removing training circuitry thatperforms said steps of training, evaluating and applying steps during alevel learning process.
 10. A system for equalizing a channel in a datacommunication system, comprising: a memory for storing computer-readablecode; and a processor operatively coupled to said memory, said processorconfigured to: train a channel equalizer using a two-level equalizertraining signal EQTR(n) having an ideal value; evaluate and update anactual level of said equalizer training signal EQTR(n) to compensate forsaid channel; and apply said actual level of the signal EQTR(n) to alevel adapter while further updating said channel equalizer.
 11. Thesystem of claim 10, wherein said processor is configured to converge thechannel equalizer to a certain level using said two-level equalizertraining signal EQTR(n) having an ideal value.
 12. The system of claim10, wherein said processor is configured to evaluate and update saidactual level once said channel equalizer reaches a certain level ofconvergence.
 13. The system of claim 10, wherein said actual level ofthe signal EQTR(n) is different from said equalizer training signalEQTR(n) having an ideal value due to a digital loss or a robbed bitcondition.
 14. The system of claim 10, wherein said processor isconfigured to monitor the level of six phases and the amplitude of eachphase is calculated while evaluating and updating said actual level. 15.The system of claim 10, wherein the noise of the actual level of theequalizer training signal EQTR(n) is reduced using a low pass filterbefore said actual level of the equalizer training signal EQTR(n) iscalculated.
 16. The system of claim 10, wherein said processor isconfigured to fix said level adapter and update said channel equalizer.17. The system of claim 10, wherein said processor is configured toperform a level learning process with said channel equalizer fixed. 18.The system of claim 17, wherein said processor is configured to removetraining circuitry that performs said training, evaluating and applyingsteps during a level learning process.
 19. A channel equalizer for adata communication system, comprising: training circuitry to (i) train achannel equalizer using a two-level equalizer training signal EQTR(n)having an ideal value, and (ii) evaluate and update an actual level ofsaid equalizer training signal EQTR(n) to compensate for said channel;and a switch to selectively remove a path that updates the value of saidlevel adapter and to thereby fix the value of said level adapter withsaid actual level of the signal EQTR(n) while further updating saidchannel equalizer.
 20. A channel equalizer for a data communicationsystem, comprising: training circuitry to (i) train a channel equalizerusing a two-level equalizer training signal EQTR(n) having an idealvalue, and (ii) evaluate and update an actual level of said equalizertraining signal EQTR(n) to compensate for said channel, and (iii) applysaid actual level of the signal EQTR(n) to a level adapter while furtherupdating said channel equalizer a switch to selectively remove saidtraining circuitry during a level learning process and to fix the valuesof said level adapter and said channel equalizer.
 21. A method forperforming level learning with a channel equalizer in a datacommunication system, comprising the steps of: training a channelequalizer using a multi-step process to evaluate and update an actuallevel of an equalizer training signal EQTR(n) to compensate for saidchannel; applying said actual level of the signal EQTR(n) to a leveladapter; fixing the value of said channel equalizer; and removingtraining circuitry that performs said training step.
 22. A method forperforming level learning with a channel equalizer in a datacommunication system, comprising the steps of: training a channelequalizer using a multi-step process to evaluate and update an actuallevel of an equalizer training signal EQTR(n) to compensate for saidchannel; fixing the state of said channel equalizer and a level adapterafter said training step; and identifying degradations in a signal insaid data communication caused by robbed bit signaling using a levellearning sequence, TR(n), having zero insertions to minimize symbolinterference.
 23. The method of claim 22, wherein circuitry forperforming said training step is removed during said level learningprocess.
 24. The method of claim 22, wherein each level will be dividedinto six phases corresponding to said robbed bit signaling and processedindividually.
 25. The method of claim 24, wherein the noise of eachphase of one Ucode (one PCM code) is reduced using a low pass filterbefore said actual level output of six phases in the level learningsequence, TR(n).